﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SpeakupBackend.Themes
{
    interface ILevelGroupFactory<LevelGroupType>
    {
        IList<Tuple<int, int>> ValidLevelGroups
        {
            get;
        }

        bool IsValidLevelGroup(int minLevel, int maxLevel);

        LevelGroupType GetLevelGroup(int level);        
        LevelGroupType GetLevelGroup(Level level);
        LevelGroupType GetLevelGroup(int minLevelNumber, int maxLevelNumber);
        LevelGroupType GetLevelGroup(String strLevelGroup);

        IList<LevelGroupType> GetLevelGroups();
    }
}
